如果是寫 Python 有一段時間的人,一定對於版本衝突很有感觸,經常會遇到在安裝某個套件的時候,提示安裝失敗,原因是與另一個套件版本衝突,需要另外一個套件較低的版本才能安裝,這時候可能大家就會馬上想到,那就直接刪除掉原本的版本,安裝指定的版本就好拉,這麼輕鬆!
當初剛接觸 Python 的我也是這麼想的,但馬上就被打臉,因為這個變更是直接在原本的系統 Python 環境上做變更,所以所有的 Python 文件都會被影響,如果這時另一個程式需要更高的版本,就會導致無法運行,造成一邊可以,一邊就不行的情況,虛擬環境就是為了避免這種狀況發生而存在。
虛擬環境可以做到與系統環境隔離,在虛擬環境安裝的套件都與系統環境無關,這樣就不會因為版本影響到其他程式的運行了,所以實務上較多是建立多個虛擬環境,一個虛擬環境 for 一個開發,同時也可以保持系統環境的乾淨。
這次選擇使用 Vertualenv 來建立虛擬環境,因為他比內建的 venv 更穩定,功能更強大,也是現在較多人使用的
pip install virtualenv
pip list | grep virtualenv
今天我們就先把 virtualenv 先安裝好,下一篇再詳細介紹 virtualenv 的使用方式